Clean usage of void pointers to access symbols
authorJoel Hutton <Joel.Hutton@Arm.com>
Wed, 21 Mar 2018 11:40:57 +0000 (11:40 +0000)
committerJoel Hutton <Joel.Hutton@Arm.com>
Tue, 27 Mar 2018 12:20:27 +0000 (13:20 +0100)
commit9f85f9e3796f1c351bbc4c8436dc66d83c140b71
treed9cbd296c7fa0205323ebb5da1ab466b3227f5d5
parentf13ef37a38cec17f72f08dc63bbbe546a54d78a7
Clean usage of void pointers to access symbols

Void pointers have been used to access linker symbols, by declaring an
extern pointer, then taking the address of it. This limits symbols
values to aligned pointer values. To remove this restriction an
IMPORT_SYM macro has been introduced, which declares it as a char
pointer and casts it to the required type.

Change-Id: I89877fc3b13ed311817bb8ba79d4872b89bfd3b0
Signed-off-by: Joel Hutton <Joel.Hutton@Arm.com>
18 files changed:
bl1/bl1_private.h
common/runtime_svc.c
drivers/auth/img_parser_mod.c
include/common/bl_common.h
include/common/runtime_svc.h
include/lib/utils_def.h
include/plat/common/common_def.h
include/services/secure_partition.h
lib/locks/bakery/bakery_lock_normal.c
lib/pmf/pmf_main.c
plat/hisilicon/hikey/hikey_bl1_setup.c
plat/hisilicon/hikey960/hikey960_bl1_setup.c
plat/hisilicon/poplar/bl1_plat_setup.c
plat/mediatek/mt6795/bl31_plat_setup.c
plat/mediatek/mt8173/bl31_plat_setup.c
plat/nvidia/tegra/common/tegra_bl31_setup.c
plat/rockchip/common/bl31_plat_setup.c
services/std_svc/spm/spm_shim_private.h